template<typename... Args>
class VariadicTemplate {
public:
    VariadicTemplate(Args... args) {
        process(args...);
    }
    
    void process(Args... args) {
        process_impl(args...);
    }
    
private:
    void process_impl() {
        // 终止条件，当没有参数时停止递归调用
    }
    
    template<typename T, typename... Rest>
    void process_impl(T first, Rest... rest) {
        // 对传入的每个参数执行相应的处理操作
        std::cout << first << std::endl;
        process_impl(rest...);
    }
};

int main() {
    VariadicTemplate<int, float, std::string> vt(1, 3.14, "Hello");
    // 输出：1, 3.14, Hello
    return 0;
}
